/**
 * 
 */
package fr.gfi.agraf.service.enumeration;

/**
 * @author Fw
 * 
 */
public enum EtatEnum {

	CREE(1L, "label-info", "Crée"), EN_COURS(2L, "label-warning", "en cours"), TERMINE(3L, "label-success",
			"terminé");

	private Long id;
	private String libelleCss;
	private String libelle;

	/**
	 * Constructeur
	 * 
	 * @param id
	 * @param libelleCss
	 * @param libelle
	 */
	private EtatEnum(final Long id, final String libelleCss, final String libelle) {
		this.id = id;
		this.libelleCss = libelleCss;
		this.libelle = libelle;
	}

	/**
	 * Recupere l'état enum selon un id
	 * 
	 * @param id
	 * @return
	 */
	public static EtatEnum getEtatEnumById(final Long id) {
		for (final EtatEnum etatEnum : EtatEnum.values()) {
			if (etatEnum.getId() == id) {
				return etatEnum;
			}
		}
		return null;
	}

	public Long getId() {
		return id;
	}

	public void setId(final Long id) {
		this.id = id;
	}

	public String getLibelleCss() {
		return libelleCss;
	}

	public void setLibelleCss(final String libelleCss) {
		this.libelleCss = libelleCss;
	}

	public String getLibelle() {
		return libelle;
	}

	public void setLibelle(final String libelle) {
		this.libelle = libelle;
	}

}
